package com.takeaway.service.serviceinterface;

import com.takeaway.pojo.Shop;

import java.util.List;

/**
 * @author 后台赖骏
 */
public interface ShopService {
    /**
     * 进行用户的商店展示
     * @param begin 开始查询的页码
     * @param listNum 一共展示的调试
     * @return 返回商店
     * @throws Exception 抛出异常进行出来
     */
    List<Shop> showShop(int begin, int listNum)throws Exception;


    /**返回数据库中的数据条数
     * @return 返回条数
     * @throws Exception 抛出异常
     */
    long checkShopNum() throws Exception;
    /**返回数据库中的数据条数
     * @return 返回条数
     * @param checkFactor 用户输入的查询条件
     * @throws Exception 抛出异常
     */
    List<Shop> searchShop(String checkFactor) throws Exception;


    /**增加商铺
     * @param shopName 创建的商店名
     * @param ownerId 商店主人的名称
     * @param description 商店描述
     * @return 返回增加成功的条数
     * @throws Exception 抛出异常
     */
    int addShop(String shopName, int ownerId, String description) throws Exception;
    /**增加商铺
     * @param shopName 创建的商店名
     * @param ownerId 商店主人的名称
     * @param description 商店描述
     * @param isSent 要改变是否分发优惠劵
     * @return 返回增加成功的条数
     * @throws Exception 抛出异常
     */
    int updateShop(String shopName, int ownerId, String description,int isSent) throws Exception;

    /**查询商铺
     * @param ownerId 商店店主的id
     * @return 返回商店信息
     * @throws Exception 抛出异常
     */
    Object[] checkShop(int ownerId) throws Exception;
    /**查询商铺
     * @param shopCode 商店店主的id
     * @return 返回商店信息
     * @throws Exception 抛出异常
     */
    List<Shop> checkManageShop(int shopCode) throws Exception;

    /**使审核通过
     * @return 返回修改成功条数
     * @param shopId 商店的id
     * @throws Exception 抛出异常
     */
    int updateShopCode(int shopId) throws Exception;
    /**返回收藏的商店
     * @param userId 用户的id
     * @return 返回添加成功的条数
     * @throws Exception 抛出异常
     */
    List<Shop> checkCollect(int userId) throws Exception;
    /**点赞数增多
     * @return 返回修改成功数
     * @param shopId 商店的id
     * @throws Exception 抛出异常
     */
    int updateStar(int shopId) throws Exception;
}
